package com.zhuo.project.order.domain;

import com.zhuo.framework.aspectj.lang.annotation.Excel;
import java.util.Date;
import com.zhuo.framework.web.domain.BaseEntity;


import org.apache.commons.lang3.builder.ToStringBuilder;
import org.apache.commons.lang3.builder.ToStringStyle;

/**
 * 处方单发药明细对象 zz_diagnose_send
 * 
 * @author zhuo
 * @date 2020-03-26
 */
public class ZzDiagnoseSend extends BaseEntity
{
    private static final long serialVersionUID = 1L;

    /** id */
    private Long id;

    /** 处方ID */
    @Excel(name = "处方ID")
    private String diagnoseId;

    /** 发药单号 */
    @Excel(name = "发药单号")
    private String sendId;

    /** 配发药状态（1配药 2发药 3 已回传K3） */
    @Excel(name = "配发药状态", readConverterExp = "1=配药,2=发药,3=,已=回传K3")
    private Integer sendStatus;

    /** 行项目号 */
    @Excel(name = "行项目号")
    private Integer itemNo;

    /** 物料ID */
    @Excel(name = "物料ID")
    private String materialId;

    /** 物料名称 */
    @Excel(name = "物料名称")
    private String materialName;

    /** 卓正识别码 */
    @Excel(name = "卓正识别码")
    private String barcode;

    /** 已发数量 */
    @Excel(name = "已发数量")
    private Double sendQty;

    /** 剩余可发数量 */
    private Double leftSendQty;

    private double returnQty = 0;

    /** 每次扫码基数 */
    private  Double scanNumPer;

    /** 基本单位 */
    @Excel(name = "基本单位")
    private Double baseQtyUnit;

    /** 基本单位名称 */
    @Excel(name = "基本单位名称")
    private String baseQtyUnitName;

    /** 退药数量 */
    @Excel(name = "退药数量")
    private Double totalReturnQty;

    /** 最后配药时间 */
    @Excel(name = "最后配药时间", width = 30, dateFormat = "yyyy-MM-dd HH:mm:ss")
    private Date lastEquipTime;

    /** 配药人 */
    @Excel(name = "配药人")
    private String equipBy;

    /** 发药时间 */
    @Excel(name = "发药时间", width = 30, dateFormat = "yyyy-MM-dd HH:mm:ss")
    private Date sendTime;

    /** 发药人 */
    @Excel(name = "发药人")
    private String sendBy;

    /** 错误信息 */
    @Excel(name = "错误信息")
    private String error;

    /** 发药诊所代码 */
    @Excel(name = "发药诊所代码")
    private String deptCode;

    /** 发药诊所 */
    @Excel(name = "发药诊所")
    private String deptName;

    /** 仓库代码 */
    @Excel(name = "仓库代码")
    private String depotCode;

    /** 仓库名称 */
    @Excel(name = "仓库名称")
    private String depotName;

    /** 状态（0正常 1关闭） */
    @Excel(name = "状态", readConverterExp = "0=正常,1=关闭")
    private Integer isValid;

    public void setId(Long id) 
    {
        this.id = id;
    }

    public Long getId() 
    {
        return id;
    }
    public void setDiagnoseId(String diagnoseId) 
    {
        this.diagnoseId = diagnoseId;
    }

    public String getDiagnoseId() 
    {
        return diagnoseId;
    }
    public void setSendId(String sendId) 
    {
        this.sendId = sendId;
    }

    public String getSendId() 
    {
        return sendId;
    }
    public void setSendStatus(Integer sendStatus) 
    {
        this.sendStatus = sendStatus;
    }

    public Integer getSendStatus() 
    {
        return sendStatus;
    }
    public void setItemNo(Integer itemNo) 
    {
        this.itemNo = itemNo;
    }

    public Integer getItemNo() 
    {
        return itemNo;
    }
    public void setMaterialId(String materialId)
    {
        this.materialId = materialId;
    }

    public String getMaterialId()
    {
        return materialId;
    }
    public void setMaterialName(String materialName) 
    {
        this.materialName = materialName;
    }

    public String getMaterialName() 
    {
        return materialName;
    }
    public void setBarcode(String barcode) 
    {
        this.barcode = barcode;
    }

    public String getBarcode() 
    {
        return barcode;
    }
    public void setSendQty(Double sendQty) 
    {
        this.sendQty = sendQty;
    }

    public Double getSendQty() 
    {
        return sendQty;
    }
    public void setBaseQtyUnit(Double baseQtyUnit) 
    {
        this.baseQtyUnit = baseQtyUnit;
    }

    public Double getBaseQtyUnit() 
    {
        return baseQtyUnit;
    }
    public void setBaseQtyUnitName(String baseQtyUnitName) 
    {
        this.baseQtyUnitName = baseQtyUnitName;
    }

    public String getBaseQtyUnitName() 
    {
        return baseQtyUnitName;
    }
    public void setTotalReturnQty(Double totalReturnQty) 
    {
        this.totalReturnQty = totalReturnQty;
    }

    public Double getTotalReturnQty() 
    {
        return totalReturnQty;
    }
    public void setLastEquipTime(Date lastEquipTime) 
    {
        this.lastEquipTime = lastEquipTime;
    }

    public Date getLastEquipTime() 
    {
        return lastEquipTime;
    }
    public void setEquipBy(String equipBy) 
    {
        this.equipBy = equipBy;
    }

    public String getEquipBy() 
    {
        return equipBy;
    }
    public void setSendTime(Date sendTime) 
    {
        this.sendTime = sendTime;
    }

    public Date getSendTime() 
    {
        return sendTime;
    }
    public void setSendBy(String sendBy) 
    {
        this.sendBy = sendBy;
    }

    public String getSendBy() 
    {
        return sendBy;
    }
    public void setError(String error) 
    {
        this.error = error;
    }

    public String getError() 
    {
        return error;
    }
    public void setDeptCode(String deptCode) 
    {
        this.deptCode = deptCode;
    }

    public String getDeptCode() 
    {
        return deptCode;
    }
    public void setDeptName(String deptName) 
    {
        this.deptName = deptName;
    }

    public String getDeptName() 
    {
        return deptName;
    }
    public void setDepotCode(String depotCode) 
    {
        this.depotCode = depotCode;
    }

    public String getDepotCode() 
    {
        return depotCode;
    }
    public void setDepotName(String depotName) 
    {
        this.depotName = depotName;
    }

    public String getDepotName() 
    {
        return depotName;
    }
    public void setIsValid(Integer isValid) 
    {
        this.isValid = isValid;
    }

    public Integer getIsValid() 
    {
        return isValid;
    }

    public Double getLeftSendQty() {
        return leftSendQty;
    }

    public void setLeftSendQty(Double leftSendQty) {
        this.leftSendQty = leftSendQty;
    }

    public Double getScanNumPer() {
        return scanNumPer;
    }

    public void setScanNumPer(Double scanNumPer) {
        this.scanNumPer = scanNumPer;
    }

    public double getReturnQty() {
        return returnQty;
    }

    public void setReturnQty(double returnQty) {
        this.returnQty = returnQty;
    }

    @Override
    public String toString() {
        return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE)
            .append("id", getId())
            .append("diagnoseId", getDiagnoseId())
            .append("sendId", getSendId())
            .append("sendStatus", getSendStatus())
            .append("itemNo", getItemNo())
            .append("materialId", getMaterialId())
            .append("materialName", getMaterialName())
            .append("barcode", getBarcode())
            .append("sendQty", getSendQty())
            .append("baseQtyUnit", getBaseQtyUnit())
            .append("baseQtyUnitName", getBaseQtyUnitName())
            .append("totalReturnQty", getTotalReturnQty())
            .append("lastEquipTime", getLastEquipTime())
            .append("equipBy", getEquipBy())
            .append("sendTime", getSendTime())
            .append("sendBy", getSendBy())
            .append("error", getError())
            .append("deptCode", getDeptCode())
            .append("deptName", getDeptName())
            .append("depotCode", getDepotCode())
            .append("depotName", getDepotName())
            .append("isValid", getIsValid())
            .append("createBy", getCreateBy())
            .append("createTime", getCreateTime())
            .append("updateBy", getUpdateBy())
            .append("updateTime", getUpdateTime())
            .toString();
    }
}
